package cn.edu.gsau.info.models;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.time.LocalDate;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * <p>
 *
 * </p>
 *
 * @author jinjiang
 * @since 2022-11-17
 */
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("tbl_zhidaojingsai")
public class Zhidaojingsai implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    private Long tianbaoId;

    private String tianbaoName;

    private String jingsaiName;

    private String zuzhiDanWei;

    private String deFen;

    /**
     * 国家级，省级，校级
     */
    private String huojiangJibie;

    /**
     * 一等奖，优秀指导教师，成功参赛
     */
    private String huojiangDengji;

    private LocalDate huojiangDate;

    /**
     * 整数，表示获得了几个奖项
     */
    private Integer suoHuoJiangXiang;

    private String createBy;

    @JsonFormat(shape = JsonFormat.Shape.STRING,timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    private String updateBy;

    @JsonFormat(shape = JsonFormat.Shape.STRING,timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    private String status;

    private String node;

    private String manager;

    @TableLogic
    private Integer deleted;

    private String memo;



    @TableField(exist = false)
    private ArrayList<Zhengmingcailiao> fileList;

    @TableField(exist = false)
    private Shenhe shenhe;

    @TableField(exist = false)
    private List<Shenhe> shenhes;

}
